package com.erp.erp_ui.warehouse.req;

import java.io.Serializable;
import java.math.BigDecimal;

/**
 * @ClassName : AddTransferDetailReq
 * @Description : 新增调拨明细入参实体
 * @Author : lst
 * @Date: 2020-08-03 12:08
 */
public class AddTransferDetailReq implements Serializable {

    /**
     * 序列码
     */
    private static final long serialVersionUID = 7802952605768950871L;

    /**
     * 主键
     */
    private Integer id;

    /**
     * 库存id
     */
    private Integer stockId;

    /**
     * 库存明细id
     */
    private Integer stockDetailId;

    /**
     * 销售合同唯一主键id
     */
    private Integer contractId;

    /**
     * 入库单号
     */
    private String inStoreBillNo;

    /**
     * 合同号
     */
    private String contractNo;

    /**
     * 新合同号
     */
    private String newContractNo;

    /**
     * 产品编码
     */
    private String productCode;

    /**
     * 规格编码
     */
    private String specificationCode;

    /**
     * 客户货号
     */
    private String clientProductNo;

    /**
     * 产品中文名称
     */
    private String productCname;

    /**
     * 产品英文名称
     */
    private String productEname;

    /**
     * 库存数量
     */
    private BigDecimal stockQuantity;

    /**
     * 可申请数量
     */
    private BigDecimal canApplyQuantity;

    /**
     * 调拨申请数量
     */
    private BigDecimal transferApplyQuantity;

    /**
     * 产品类型(1:成品 2:配件 3:料件)
     */
    private Integer productType;

    /**
     * 批次号
     */
    private String lotNo;

    /**
     * 仓库编码
     */
    private String warehouseCode;
    /**
     * 仓库名称
     */
    private String warehouseName;
    /**
     * 新仓库编码
     */
    private String newWarehouseCode;
    /**
     * 新仓库名称
     */
    private String newWarehouseName;

    /**
     * 产品单位
     */
    private String productUnit;

    /**
     * 调拨数量
     */
    private BigDecimal transferQuantity;

    /**
     * 允许调拨数量
     */
    private BigDecimal canTransferQuantity;

    /**
     * 销售单价
     */
    private BigDecimal salesUnitPrice;

    /**
     * 产品中文描述
     */
    private String productCdesc;

    /**
     * 产品英文描述
     */
    private String productEdesc;

    /**
     * 成本单价
     */
    private BigDecimal costUnitPrice;

    /**
     * 分摊费用单价
     */
    private BigDecimal shareCostPrice;

    /**
     * 规格说明
     */
    private String specificationExplanation;

    /**
     * 金额
     */
    private BigDecimal money;

    /**
     * 托盘入数
     */
    private BigDecimal trayNumber;

    /**
     * 总托盘
     */
    private BigDecimal totalTray;

    /**
     * 颜色
     */
    private String color;

    /**
     * 备注
     */
    private String memo;

    /**
     * 业务员名称(对应外销业务员)
     */
    private String salesman;

    /**
     * 业务员编码(对应外销业务员)
     */
    private String salesmanCode;


    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Integer getStockId() {
        return stockId;
    }

    public void setStockId(Integer stockId) {
        this.stockId = stockId;
    }

    public Integer getStockDetailId() {
        return stockDetailId;
    }

    public void setStockDetailId(Integer stockDetailId) {
        this.stockDetailId = stockDetailId;
    }

    public Integer getContractId() {
        return contractId;
    }

    public void setContractId(Integer contractId) {
        this.contractId = contractId;
    }

    public String getInStoreBillNo() {
        return inStoreBillNo;
    }

    public void setInStoreBillNo(String inStoreBillNo) {
        this.inStoreBillNo = inStoreBillNo;
    }

    public String getContractNo() {
        return contractNo;
    }

    public void setContractNo(String contractNo) {
        this.contractNo = contractNo;
    }

    public String getNewContractNo() {
        return newContractNo;
    }

    public void setNewContractNo(String newContractNo) {
        this.newContractNo = newContractNo;
    }

    public String getProductCode() {
        return productCode;
    }

    public void setProductCode(String productCode) {
        this.productCode = productCode;
    }

    public String getSpecificationCode() {
        return specificationCode;
    }

    public void setSpecificationCode(String specificationCode) {
        this.specificationCode = specificationCode;
    }

    public String getClientProductNo() {
        return clientProductNo;
    }

    public void setClientProductNo(String clientProductNo) {
        this.clientProductNo = clientProductNo;
    }

    public String getProductCname() {
        return productCname;
    }

    public void setProductCname(String productCname) {
        this.productCname = productCname;
    }

    public String getProductEname() {
        return productEname;
    }

    public void setProductEname(String productEname) {
        this.productEname = productEname;
    }

    public BigDecimal getStockQuantity() {
        return stockQuantity;
    }

    public void setStockQuantity(BigDecimal stockQuantity) {
        this.stockQuantity = stockQuantity;
    }

    public BigDecimal getCanApplyQuantity() {
        return canApplyQuantity;
    }

    public void setCanApplyQuantity(BigDecimal canApplyQuantity) {
        this.canApplyQuantity = canApplyQuantity;
    }

    public BigDecimal getTransferApplyQuantity() {
        return transferApplyQuantity;
    }

    public void setTransferApplyQuantity(BigDecimal transferApplyQuantity) {
        this.transferApplyQuantity = transferApplyQuantity;
    }

    public Integer getProductType() {
        return productType;
    }

    public void setProductType(Integer productType) {
        this.productType = productType;
    }

    public String getLotNo() {
        return lotNo;
    }

    public void setLotNo(String lotNo) {
        this.lotNo = lotNo;
    }

    public String getWarehouseCode() {
        return warehouseCode;
    }

    public void setWarehouseCode(String warehouseCode) {
        this.warehouseCode = warehouseCode;
    }

    public String getWarehouseName() {
        return warehouseName;
    }

    public void setWarehouseName(String warehouseName) {
        this.warehouseName = warehouseName;
    }

    public String getNewWarehouseCode() {
        return newWarehouseCode;
    }

    public void setNewWarehouseCode(String newWarehouseCode) {
        this.newWarehouseCode = newWarehouseCode;
    }

    public String getNewWarehouseName() {
        return newWarehouseName;
    }

    public void setNewWarehouseName(String newWarehouseName) {
        this.newWarehouseName = newWarehouseName;
    }

    public String getProductUnit() {
        return productUnit;
    }

    public void setProductUnit(String productUnit) {
        this.productUnit = productUnit;
    }

    public BigDecimal getTransferQuantity() {
        return transferQuantity;
    }

    public void setTransferQuantity(BigDecimal transferQuantity) {
        this.transferQuantity = transferQuantity;
    }

    public BigDecimal getCanTransferQuantity() {
        return canTransferQuantity;
    }

    public void setCanTransferQuantity(BigDecimal canTransferQuantity) {
        this.canTransferQuantity = canTransferQuantity;
    }

    public BigDecimal getSalesUnitPrice() {
        return salesUnitPrice;
    }

    public void setSalesUnitPrice(BigDecimal salesUnitPrice) {
        this.salesUnitPrice = salesUnitPrice;
    }

    public String getProductCdesc() {
        return productCdesc;
    }

    public void setProductCdesc(String productCdesc) {
        this.productCdesc = productCdesc;
    }

    public String getProductEdesc() {
        return productEdesc;
    }

    public void setProductEdesc(String productEdesc) {
        this.productEdesc = productEdesc;
    }

    public BigDecimal getCostUnitPrice() {
        return costUnitPrice;
    }

    public void setCostUnitPrice(BigDecimal costUnitPrice) {
        this.costUnitPrice = costUnitPrice;
    }

    public BigDecimal getShareCostPrice() {
        return shareCostPrice;
    }

    public void setShareCostPrice(BigDecimal shareCostPrice) {
        this.shareCostPrice = shareCostPrice;
    }

    public String getSpecificationExplanation() {
        return specificationExplanation;
    }

    public void setSpecificationExplanation(String specificationExplanation) {
        this.specificationExplanation = specificationExplanation;
    }

    public BigDecimal getMoney() {
        return money;
    }

    public void setMoney(BigDecimal money) {
        this.money = money;
    }

    public BigDecimal getTrayNumber() {
        return trayNumber;
    }

    public void setTrayNumber(BigDecimal trayNumber) {
        this.trayNumber = trayNumber;
    }

    public BigDecimal getTotalTray() {
        return totalTray;
    }

    public void setTotalTray(BigDecimal totalTray) {
        this.totalTray = totalTray;
    }

    public String getColor() {
        return color;
    }

    public void setColor(String color) {
        this.color = color;
    }

    public String getMemo() {
        return memo;
    }

    public void setMemo(String memo) {
        this.memo = memo;
    }

    public String getSalesman() {
        return salesman;
    }

    public void setSalesman(String salesman) {
        this.salesman = salesman;
    }

    public String getSalesmanCode() {
        return salesmanCode;
    }

    public void setSalesmanCode(String salesmanCode) {
        this.salesmanCode = salesmanCode;
    }

    /**
     * 重写toString
     */
    @Override
    public String toString() {
        final StringBuilder sb = new StringBuilder("AddTransferDetailReq").append('[')
                .append("id=")
                .append(id)
                .append(",stockId=")
                .append(stockId)
                .append(",stockDetailId=")
                .append(stockDetailId)
                .append(",contractId=")
                .append(contractId)
                .append(",inStoreBillNo=")
                .append(inStoreBillNo)
                .append(",contractNo=")
                .append(contractNo)
                .append(",newContractNo=")
                .append(newContractNo)
                .append(",productCode=")
                .append(productCode)
                .append(",specificationCode=")
                .append(specificationCode)
                .append(",clientProductNo=")
                .append(clientProductNo)
                .append(",productCname=")
                .append(productCname)
                .append(",productEname=")
                .append(productEname)
                .append(",stockQuantity=")
                .append(stockQuantity)
                .append(",canApplyQuantity=")
                .append(canApplyQuantity)
                .append(",transferApplyQuantity=")
                .append(transferApplyQuantity)
                .append(",productType=")
                .append(productType)
                .append(",lotNo=")
                .append(lotNo)
                .append(",warehouseCode=")
                .append(warehouseCode)
                .append(",warehouseName=")
                .append(warehouseName)
                .append(",newWarehouseCode=")
                .append(newWarehouseCode)
                .append(",newWarehouseName=")
                .append(newWarehouseName)
                .append(",productUnit=")
                .append(productUnit)
                .append(",transferQuantity=")
                .append(transferQuantity)
                .append(",canTransferQuantity=")
                .append(canTransferQuantity)
                .append(",salesUnitPrice=")
                .append(salesUnitPrice)
                .append(",productCdesc=")
                .append(productCdesc)
                .append(",productEdesc=")
                .append(productEdesc)
                .append(",costUnitPrice=")
                .append(costUnitPrice)
                .append(",shareCostPrice=")
                .append(shareCostPrice)
                .append(",specificationExplanation=")
                .append(specificationExplanation)
                .append(",money=")
                .append(money)
                .append(",trayNumber=")
                .append(trayNumber)
                .append(",totalTray=")
                .append(totalTray)
                .append(",color=")
                .append(color)
                .append(",memo=")
                .append(memo)
                .append(",salesman=")
                .append(salesman)
                .append(",salesmanCode=")
                .append(salesmanCode)
                .append(']');
        return sb.toString();
    }
}
